<?php
App::uses('AppModel', 'Model');
/**
 * Lugar Model
 *
 */
class Lugar extends AppModel {

	/**
	 * Use database config
	 *
	 * @var string
	 */
	public $useDbConfig = 'default';

	/**
	 * Use table
	 *
	 * @var mixed False or table name
	 */
	public $useTable = 'lugar';
	
	/**
	 * Display field
	 *
	 * @var string
	 */
	public $displayField = 'nombre';


	//The Associations below have been created with all possible keys, those that are not needed can be removed

	/**
	 * belongsTo associations
	 *
	 * @var array
	 */
	public $belongsTo = array(
		'Municipio' => array(
			'className' => 'Municipio',
			'foreignKey' => 'municipio_id',
			'conditions' => '',
			'fields' => '',
			'order' => ''
		),
		'CuadriculaUtm' => array(
			'className' => 'CuadriculaUtm',
			'foreignKey' => 'cuadricula_utm_id',
			'conditions' => '',
			'fields' => '',
			'order' => ''
		),
		'Comarca' => array(
			'className' => 'Comarca',
			'foreignKey' => 'comarca_id',
			'conditions' => '',
			'fields' => '',
			'order' => ''
		),
		'Usuario' => array(
			'className' => 'Usuario',
			'foreignKey' => 'usuario_id',
			'conditions' => '',
			'fields' => '',
			'order' => ''
		)
	);
	
	/*
	 * Funciones
	 */
	
	/**
	 * Obtiene toda la información de un lugar
	 */
	public function obtenerTodoPorId($lugar_id) {
		
		$lugar = $this -> find(
			'first', 
			array(
				'conditions'=>array('Lugar.id'=>$lugar_id)
			)
		);
		
		return $lugar;
	}
	
	/**
	 * Obtiene todos los lugares activos ordenados por nombre 
	 */
	public function obtenerLugaresActivosOrdenadosPorNombre() {
		
		$lugares = $this -> find(
			'all', 
			array(
				'fields'=>array('Lugar.id', 'Lugar.nombre'),
				'conditions'=>array('Lugar.indActivo'=>1),
				'order'=>array('Lugar.nombre ASC'),
				'recursive'=>-1
			)
		);
		
		return $lugares;
	}
}
